def f(x1, y1, r1, x2, y2, r2): s = (x2-x1)**2+(y2-y1)**2 if s > (r1+r2)**2: print('impossible'); exit() elif s == (r1+r2)**2: return [(x1*r2+x2*r1, y1*r2+y2*r1, r1+r2)] elif s <= (r1-r2)**2: return (r1>r2)-(r1 r*r*c*c: ok = 0; break if not ok: continue k = (p/c, q/c) if k not in V: V[k] = set() V[k].add(i); V[k].add(j) if max(I) == N-1: print('voter', I.index(N-1)+1); exit() for p in [*V]: V[p] = sorted(x+1 for x in V[p] if not O[x]) if not V: print('impossible'); exit() print('compromise', len(V)) for h in sorted(V, key=lambda x: V[x]): print(*h, *V[h])